1. Field of the Invention
The present invention relates to network terminal address auto-configuration in communication networks.
2. Description of the Related Art
As disclosed by U.S. Pat. No. 5,729,537, continued advancements in the field of cellular telephony, as well as other types of radio telecommunications, have permitted the introduction of new services and new forms of communication pursuant to already-installed cellular, and other radio telecommunication, networks.
For instance, proposals have been set forth to provide existing cellular, and other communication networks, with the capability of communicating packet data.
For example, GPRS (General Packet Radio Service) has been proposed for GSM (Global System for Mobile communication) cellular communication network to provide GSM mobile stations with the capability of communicating packet data via the GSM network and, in particular, with the capability of using the Internet.
As well known in the art and as disclosed, for example, by said U.S. Pat. No. 5,729,537 and by US 2001/0017856, a GSM mobile communication network typically comprises a circuit-switched core network and a plurality of access networks (base station systems, BSS) connected to the circuit-switched core network. The circuit-switched core network typically comprises a plurality of mobile switching centers (MSC), a plurality of visitor location registers (VLR), a home location register (HLR) and an authentication center (AUC). Each base station system typically comprises a plurality of base station controllers (BSC), each having associated a plurality of base transceiver stations. (BTS).
In a GPRS context, gateway GPRS support nodes (GGSN) and serving GPRS support nodes (SGSN) connect the GSM mobile communication network (typically, the base station systems thereof) to a packet data network to make possible packet data transmission between mobile terminals and packet data networks.
Authentication procedures are typically performed prior to providing a GSM mobile station with access to the GSM network. For example, in a typical GSM challenge authentication procedure, the mobile station transmits to the network the International Mobile Subscriber Identity (IMSI), which is stored in its Subscriber Identity Module (SIM) card with associated a corresponding authentication key Ki. For each subscriber, the Authentication center AUC stores the IMSI and authentication key Ki corresponding to the IMSI and Ki stored in the subscriber's SIM card. The AUC thus generates a random number RAND and executes a first algorithm responsive to the values of RAND and Ki to form a signed response (SRES) value and executes a second algorithm responsive to the values of RAND and Ki to form a ciphering Key (Kc). The network transmits to the mobile station the value of RAND generated by the AUC. The mobile station uses the received value of RAND and the value of Ki stored at the SIM card to calculate SRES through the first algorithm and transmits a signal indicative of the calculated SRES to the network. The network compares the SRES previously calculated at the AUC with the value provided by the mobile station. If the mobile station-calculated value of the SRES corresponds with the value of the SRES calculated at the AUC, the mobile station is authenticated and can use the received value of RAND and the value of Ki stored at the SIM card to calculate the ciphering key Kc through the second algorithm. By using the calculated Kc, the mobile station can start a ciphered communication with the circuit switched core network.
As disclosed by the above mentioned US 2001/0017856, the current communication protocol used in the Internet is called IPv4 (Internet Protocol version 4). In order for a node to be functionally connected to the Internet, it requires an IP address. The IP addresses used in IPv4 are 32 bits addresses.
Another Internet Protocol, called IPv6 (Internet Protocol version 6), has been proposed in the art to increase the number of available IP addresses to communicate in the Internet. This protocol has 128 bits addresses, thereby providing a much larger number of addresses than IPv4. An IPv6 address typically consists of a 64-bits network prefix (or subnet prefix) followed by a 64-bits interface identifier.
Two types of address auto-configuration are supported in IPv6: stateless and stateful.
In stateless address auto-configuration, a unique interface identifier is created or selected for a node, either as a random 64-bits number or as a function of some static parameter like the hardware address of the interface. The node then carries out a neighbor discovery procedure referred to as “duplicate detection”. This is to ensure that no other node in the same subnet is using the same 64-bits interface identifier. The first step in duplicate detection is to send a multicast packet, limited to the subnet, to a multicast destination address, derived as a function of the interface identifier. The address is multicast to see if it elicits a response. If there is another node having that interface identifier, then it will respond. In this case another interface identifier is chosen and the procedure is repeated until a unique interface identifier is unique to that subnet. At that point, no node having a duplicate interface identifier will respond and the node can obtain a subnet prefix to create a full IPv6 address. Subnet prefixes are announced by routers as part of router advertisements or in response to router solicitations.
In stateful auto-configuration, the node requests its address from a DHCP (dynamic host configuration protocol) server. Since the DHCP server keeps a record of assigned addresses, it is able to assign unique addresses. Therefore, duplicate detection is not strictly necessary although it may be present.
The above mentioned US 2001/0017856 document discloses the allocation of IPv6 addresses in a GPRS system. This document discloses that the mobile station either derives a PDP address (interface identifier) from statically generated information or generates it randomly. As examples of statically generated information it discloses a combination of the NSAPI relating to a PDP context and a unique identifier of the mobile station, such as the international mobile subscriber identity (IMSI), the mobile station integrated services digital network (MSISDN) number or the international mobile station equipment identity (IMEI). This document states that if the interface identifier is chosen deterministically from static information that is already known to both the mobile station and the GGSN, then it is not necessary to transfer. this information during the address acquisition phase. However, since the source of IPv6 address used by a mobile station may be visible to all of its correspondents and all routers en route, this may result in a loss of privacy. Therefore, randomly interface identifiers are preferred. The disclosed method for randomly choosing the interface identifier of the IPv6 address is the following. A mobile station generates a link identifier and sends it to a GGSN over a wireless link in a PDP (packet data protocol) context request together with a request to check if the link identifier is unique; the GGSN receives the PDP context request and checks if the link identifier is unique; the GGSN responds with a PDP context request response including either the unique link identifier confirmed as being unique or a different unique link identifier; the GGSN sends a router advertisement to the mobile station comprising a network prefix; the mobile station combines the interface identifier, extracted from the link identifier, and the network prefix to generate the IP network address. The communication between the mobile station and the GGSN are performed through a SGSN. Since the GGSN is involved in all address assignments, the GGSN ensures that there are no duplicates.
US 2003/0081578 discloses a method for an IP address allocation by an external packet data network (PDN) to a mobile station. According to this method, a mobile station sends a PDP context activation request to a GGSN through a SGSN; acting on behalf of the mobile station, the GGSN solicits the address of a DHCP server within the PDN; the PDN provides the GGSN with the address of the DHCP server to be used by GGSN; the GGSN requests an IPv6 address to the DHCP server; the PDN responds with a IPv6 address assigned to the mobile station; the GGSN performs a duplicate address detection (DAD) procedure to validate the uniqueness of the IPv6 address; when GGSN determines the address to be unique it transmits the interface identifier portion of the IPv6 address to the mobile station through SGSN; then the GGSN transmits a router advertisement message to the mobile station through the SGSN wherein the router advertisement message includes the network prefix obtained from the IPv6 address assigned to the mobile station by the PDN; the mobile station creates the IPv6 assigned thereto by combining the interface identifier and the network prefix in a stateless configuration process without the need for duplicate address detection since the GGSN has previously determined the uniqueness of the address.
The Applicant notes that the above methods disclosed by US 2001/0017856 and US 2003/0081578 require the execution of several steps and several exchanges of data between the mobile station, the GGSN and the PDN. This increases the time required for a mobile station to have an IP address assigned thereto and, thus, to be connected to a packet data network. Moreover, the IP address is assigned to the mobile station only under an explicit request from the mobile station. Therefore, the mobile station is not-reachable from the PDN (that is, it is not able to receive packet data from the PDN) until it sends a PDP context activation request to the GGSN and gets, according to the disclosed methods, the IP address assigned thereto by the network.